<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <title>pybind_signatures | My Python Project</title>
  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i%7CSource+Code+Pro:400,400i,600" />
  <link rel="stylesheet" href="m-dark+documentation.compiled.css" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>
<header><nav id="navigation">
  <div class="m-container">
    <div class="m-row">
      <a href="index.html" id="m-navbar-brand" class="m-col-t-8 m-col-m-none m-left-m">My Python Project</a>
    </div>
  </div>
</nav></header>
<main><article>
  <div class="m-container m-container-inflatable">
    <div class="m-row">
      <div class="m-col-l-10 m-push-l-1">
        <h1>
          pybind_signatures <span class="m-thin">module</span>
        </h1>
        <p>pybind11 function signature extraction</p>
        <nav class="m-block m-default">
          <h3>Contents</h3>
          <ul>
            <li>
              Reference
              <ul>
                <li><a href="#packages">Modules</a></li>
                <li><a href="#classes">Classes</a></li>
                <li><a href="#functions">Functions</a></li>
              </ul>
            </li>
          </ul>
        </nav>
        <section id="namespaces">
          <h2><a href="#namespaces">Modules</a></h2>
          <dl class="m-doc">
            <dt>module <a href="pybind_signatures.just_overloads.html" class="m-doc">just_overloads</a></dt>
            <dd>Stubs for this module should import typing as well</dd>
          </dl>
        </section>
        <section id="classes">
          <h2><a href="#classes">Classes</a></h2>
          <dl class="m-doc">
            <dt>class <a href="pybind_signatures.MyClass.html" class="m-doc">MyClass</a></dt>
            <dd>My fun class!</dd>
            <dt>class <a href="pybind_signatures.Pybind23.html" class="m-doc">Pybind23</a></dt>
            <dd>Testing pybind 2.3 features</dd>
            <dt>class <a href="pybind_signatures.Pybind26.html" class="m-doc">Pybind26</a></dt>
            <dd>Testing pybind 2.6 features</dd>
            <dt>class <a href="pybind_signatures.Pybind27.html" class="m-doc">Pybind27</a></dt>
            <dd>Testing pybind 2.7 features</dd>
          </dl>
        </section>
        <section id="functions">
          <h2><a href="#functions">Functions</a></h2>
          <dl class="m-doc">
            <dt id="crazy_signature">
              <span class="m-doc-wrap-bumper">def <a href="#crazy_signature" class="m-doc-self">crazy_signature</a>(</span><span class="m-doc-wrap">…)</span>
            </dt>
            <dd>Function that failed to get parsed</dd>
            <dt id="date_time">
              <span class="m-doc-wrap-bumper">def <a href="#date_time" class="m-doc-self">date_time</a>(</span><span class="m-doc-wrap">arg0: datetime.datetime,
              arg1: datetime.timedelta<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>A function taking a datetime.datetime and timedelta</dd>
            <dt id="default_unrepresentable_argument">
              <span class="m-doc-wrap-bumper">def <a href="#default_unrepresentable_argument" class="m-doc-self">default_unrepresentable_argument</a>(</span><span class="m-doc-wrap">a: <a href="pybind_signatures.MyClass.html" class="m-doc">MyClass</a> = ...) -&gt; None</span>
            </dt>
            <dd>A function with an unrepresentable default argument</dd>
            <dt id="duck">
              <span class="m-doc-wrap-bumper">def <a href="#duck" class="m-doc-self">duck</a>(</span><span class="m-doc-wrap">*args, **kwargs) -&gt; None</span>
            </dt>
            <dd>A function taking args/kwargs directly</dd>
            <dt id="escape_docstring">
              <span class="m-doc-wrap-bumper">def <a href="#escape_docstring" class="m-doc-self">escape_docstring</a>(</span><span class="m-doc-wrap">arg0: int<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>A docstring that &lt;em&gt;should&lt;/em&gt; be escaped</dd>
            <dt id="failed_parse_docstring">
              <span class="m-doc-wrap-bumper">def <a href="#failed_parse_docstring" class="m-doc-self">failed_parse_docstring</a>(</span><span class="m-doc-wrap">…)</span>
            </dt>
            <dd>A failed parse should &lt;strong&gt;also&lt;/strong&gt; escape the docstring</dd>
            <dt>
              <span class="m-doc-wrap-bumper">def <a href="#full_docstring" class="m-doc">full_docstring</a>(</span><span class="m-doc-wrap">arg0: int<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>A summary</dd>
            <dt>
              <span class="m-doc-wrap-bumper">def <a href="#full_docstring_overloaded-e9329" class="m-doc">full_docstring_overloaded</a>(</span><span class="m-doc-wrap">arg0: int,
              arg1: int<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>An overload summary</dd>
            <dt>
              <span class="m-doc-wrap-bumper">def <a href="#full_docstring_overloaded-fe11a" class="m-doc">full_docstring_overloaded</a>(</span><span class="m-doc-wrap">arg0: float,
              arg1: float<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Another overload summary</dd>
            <dt id="overloaded-46f8a">
              <span class="m-doc-wrap-bumper">def <a href="#overloaded-46f8a" class="m-doc-self">overloaded</a>(</span><span class="m-doc-wrap">arg0: int<span class="m-text m-dim">, /</span>) -&gt; str</span>
            </dt>
            <dd>Overloaded for ints</dd>
            <dt id="overloaded-685e8">
              <span class="m-doc-wrap-bumper">def <a href="#overloaded-685e8" class="m-doc-self">overloaded</a>(</span><span class="m-doc-wrap">arg0: float<span class="m-text m-dim">, /</span>) -&gt; bool</span>
            </dt>
            <dd>Overloaded for floats</dd>
            <dt id="scale">
              <span class="m-doc-wrap-bumper">def <a href="#scale" class="m-doc-self">scale</a>(</span><span class="m-doc-wrap">arg0: int,
              arg1: float<span class="m-text m-dim">, /</span>) -&gt; int</span>
            </dt>
            <dd>Scale an integer</dd>
            <dt id="scale_kwargs">
              <span class="m-doc-wrap-bumper">def <a href="#scale_kwargs" class="m-doc-self">scale_kwargs</a>(</span><span class="m-doc-wrap">a: int,
              argument: float) -&gt; int</span>
            </dt>
            <dd>Scale an integer, kwargs</dd>
            <dt id="takes_a_function">
              <span class="m-doc-wrap-bumper">def <a href="#takes_a_function" class="m-doc-self">takes_a_function</a>(</span><span class="m-doc-wrap">arg0: typing.Callable[[float, list[float]], int]<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>A function taking a Callable</dd>
            <dt id="takes_a_function_returning_none">
              <span class="m-doc-wrap-bumper">def <a href="#takes_a_function_returning_none" class="m-doc-self">takes_a_function_returning_none</a>(</span><span class="m-doc-wrap">arg0: typing.Callable[[], None]<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>A function taking a Callable that returns None</dd>
            <dt id="taking_a_list_returning_a_tuple">
              <span class="m-doc-wrap-bumper">def <a href="#taking_a_list_returning_a_tuple" class="m-doc-self">taking_a_list_returning_a_tuple</a>(</span><span class="m-doc-wrap">arg0: list[float]<span class="m-text m-dim">, /</span>) -&gt; tuple[int, int, int]</span>
            </dt>
            <dd>Takes a list, returns a tuple</dd>
            <dt id="tenOverloads-fe11a">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-fe11a" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: float,
              arg1: float<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="tenOverloads-8f19c">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-8f19c" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: int,
              arg1: float<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="tenOverloads-bd997">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-bd997" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: bool,
              arg1: float<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="tenOverloads-8710e">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-8710e" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: float,
              arg1: int<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="tenOverloads-e9329">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-e9329" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: int,
              arg1: int<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="tenOverloads-3d438">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-3d438" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: bool,
              arg1: int<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="tenOverloads-841cb">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-841cb" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: float,
              arg1: bool<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="tenOverloads-a6f98">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-a6f98" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: int,
              arg1: bool<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="tenOverloads-2d308">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-2d308" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: bool,
              arg1: bool<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="tenOverloads-6e57b">
              <span class="m-doc-wrap-bumper">def <a href="#tenOverloads-6e57b" class="m-doc-self">tenOverloads</a>(</span><span class="m-doc-wrap">arg0: str,
              arg1: str<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Ten overloads of a function</dd>
            <dt id="void_function">
              <span class="m-doc-wrap-bumper">def <a href="#void_function" class="m-doc-self">void_function</a>(</span><span class="m-doc-wrap">arg0: int<span class="m-text m-dim">, /</span>) -&gt; None</span>
            </dt>
            <dd>Returns nothing</dd>
          </dl>
        </section>
        <section>
          <h2>Function documentation</h2>
          <section class="m-doc-details" id="full_docstring"><div>
            <h3>
              <span class="m-doc-wrap-bumper">def pybind_signatures.<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#full_docstring" class="m-doc-self">full_docstring</a>(</span><span class="m-doc-wrap">arg0: int<span class="m-text m-dim">, /</span>) -&gt; None</span></span>
            </h3>
            <p>A summary</p>
<p>And a larger docstring as well.</p>
          </div></section>
          <section class="m-doc-details" id="full_docstring_overloaded-e9329"><div>
            <h3>
              <span class="m-doc-wrap-bumper">def pybind_signatures.<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#full_docstring_overloaded-e9329" class="m-doc-self">full_docstring_overloaded</a>(</span><span class="m-doc-wrap">arg0: int,
              arg1: int<span class="m-text m-dim">, /</span>) -&gt; None</span></span>
            </h3>
            <p>An overload summary</p>
<p>This function takes a value of 2. full_docstring_overloaded(a: float, b: float)
takes just 3 instead.</p>
          </div></section>
          <section class="m-doc-details" id="full_docstring_overloaded-fe11a"><div>
            <h3>
              <span class="m-doc-wrap-bumper">def pybind_signatures.<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#full_docstring_overloaded-fe11a" class="m-doc-self">full_docstring_overloaded</a>(</span><span class="m-doc-wrap">arg0: float,
              arg1: float<span class="m-text m-dim">, /</span>) -&gt; None</span></span>
            </h3>
            <p>Another overload summary</p>
<p>This overload, however, takes just a 32-bit (or 64-bit) floating point value of
3. full_docstring_overloaded(a: int, b: int)
takes just 2. There&#x27;s nothing for 4. full_docstring_overloaded(a: poo, b: foo)
could be another, but it&#x27;s not added yet.</p>
          </div></section>
        </section>
      </div>
    </div>
  </div>
</article></main>
</body>
</html>
